﻿<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="IngresarComprobante.aspx.cs" Inherits="IU.VentasCuentasCobrar.Comprobantes.IngresarComprobante" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<%@ Register Assembly="Ext.Net" Namespace="Ext.Net" TagPrefix="ext" %>
<%@ Register src="../../Generico/ComboClases.ascx" tagname="ComboClases" tagprefix="americo" %>

<script runat="server">
    protected void StoreItems_RefershData(object sender, StoreRefreshDataEventArgs e)
    {
        this.CargarDatosEnGrid();
    }
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
    <script type="text/javascript">
    
        var alSeleccionarLetra = function(combo, record, index) {
            if(index >= 0)
            {
                PanelItems.setDisabled(false);
                actualizarTotales();
            }
            else
            {
                PanelItems.setDisabled(true);                
            }
        }
    
        var registrarFactura = function() {
            try
            {
                var grid = GridPanelItems;           
                var datos = "";
                if(grid.store.getTotalCount()>0)
                {
                    datos += grid.store.getAt(0).get('Codigo') + '\r' 
                        + grid.store.getAt(0).get('Descripcion') + '\r' 
                        + grid.store.getAt(0).get('Tipo') + '\r' 
                        + grid.store.getAt(0).get('Cantidad') + '\r' 
                        + grid.store.getAt(0).get('PrecioUnitario') + '\r' 
                        + '0';
                    for (var i = 1; i < grid.store.getTotalCount(); i++) 
                    {
                        datos += "|" + grid.store.getAt(i).get('Codigo') + '\r' 
                        + grid.store.getAt(i).get('Descripcion') + '\r' 
                        + grid.store.getAt(i).get('Tipo') + '\r' 
                        + grid.store.getAt(i).get('Cantidad') + '\r' 
                        + grid.store.getAt(i).get('PrecioUnitario') + '\r' 
                        + i;
                    }
                
                    var concepto = TextFieldConcepto.getRawValue();
                    var date = DateFieldFecha.getRawValue();
                    var codCliente = ComboBoxCliente.getValue();
                    var fechaCambio = ComboBoxFechaCambio.getValue();
                    var codMoneda = ComboBoxMoneda.getValue();
                    var idCondicion = ComboBoxCondicionVenta.getValue();
                    var tipo = ComboBoxTipo.getValue();
                    var letra = ComboBoxLetra.getValue();
                    var numeroSuc = NumberFieldSucursal.getValue();
                    var tipoOperacion = ComboBoxTipoOperacion.getValue();
                    var codProvincia = ComboBoxProvincias.getValue();
                    var descuento = NumberFieldDescuento.getValue();
                    var idPuntoVenta = ComboBoxPuntoVenta.getValue();
                    
                    if(codProvincia == null || codProvincia == 0)
                    {
                        alert('Error: no se ha seleccionado ninguna provincia.');
                        ButtonAceptar.show();
                        return;                       
                    }                    
                    if(codMoneda == null || codMoneda == 0)
                    {
                        alert('Error: no se ha seleccionado ninguna moneda.');
                        ButtonAceptar.show();
                        return;                       
                    }                    
                    if(fechaCambio == null || fechaCambio == 0)
                    {
                        alert('Error: no se ha seleccionado ninguna fecha de cambio.');
                        ButtonAceptar.show();
                        return;                       
                    }                   
                    if(idPuntoVenta == null || idPuntoVenta == 0)
                    {
                        ButtonAceptar.show();
                        alert('Error: no se ha seleccionado ningún punto de venta.');
                        return;                       
                    }                    
                    if(idCondicion == null || idCondicion == 0)
                    {
                        ButtonAceptar.show();
                        alert('Error: no se ha seleccionado ninguna condición de venta.');
                        return;                       
                    }
                    
                    Ext.net.DirectMethods.RegistrarTodo(
                        datos, concepto, 
                        date, codCliente, 
                        fechaCambio, codMoneda, 
                        idCondicion, idPuntoVenta,
                        tipo, letra, 
                        numeroSuc, tipoOperacion, 
                        codProvincia, descuento);
                }
                else
                {
                    alert('Error: el comprobante no se pudo dar de alta. Este debe tener por lo menos un ítem.');
                    ButtonAceptar.show();
                }
            }
            catch(ex)
            {
                alert(ex);
                ButtonAceptar.show();
            }
        }
        
        var actualizarImportes = function() {
            var grid = GridPanelItems;
            for (var i = 0; i < grid.store.getTotalCount(); i++) 
            {
                var tipo = grid.store.getAt(i).get('Tipo');
                var cantidad = grid.store.getAt(i).get('Cantidad');
                var precio = grid.store.getAt(i).get('PrecioUnitario');
                if(tipo == "Servicio" || tipo == "S")
                {
                    if(cantidad != 1)
                    {
                        grid.store.getAt(i).set('Cantidad', 1);
                        cantidad = 1;
                    }
                }
                grid.store.getAt(i).set('Importe', cantidad*precio);
            }
        }
                    
        var actualizarTotales = function() {
            /* Labels para mostrar los resultados */
            var labelTotal  = LabelTotal;
            var labelNeto   = LabelTotalNeto;
            var labelOtros  = LabelOtros;
            var labelIVA    = LabelIVA;
            var labelNG     = LabelNoGravado;
            var labelDesc   = LabelDesc;
            
            /* Letra de factura */
            var letraFactura = ComboBoxLetra.getValue();
            
            /* Resultados */
            var total = 0;
            var totalNeto = 0;
            var totalOtros = 0;
            var totalIVA = 0;
            var totalDesc = 0;
            var totalNG = 0;
            
            /* Variables */
            var descuento = NumberFieldDescuento.getValue()/100;
            var iva = NumberFieldIVA.getValue()/100;
            //totalOtros = NumberFieldMontoRegimen.getValue(); // DEBEN SER MUCHOS REGIMENES
            
            /* Recorrido de items */
            var grid = GridPanelItems;
            for (var i = 0; i < grid.store.getTotalCount(); i++) 
            {
                var cantidad = grid.store.getAt(i).get('Cantidad');
                var precio = grid.store.getAt(i).get('PrecioUnitario');
                var importe = cantidad*precio;
                totalNeto += importe;
            }
            
            /* Cálculos */
            totalIVA = totalNeto * iva;
            
            /* Acomodamiento de totales según letra */
            if(letraFactura != "A" && letraFactura != "M" && letraFactura != "A/Leyenda")
            {
                totalNeto += totalIVA;
                totalIVA = 0;
            }
            
            /* Cálculos del total */
            totalDesc = totalNeto * descuento;
            total = totalNeto - totalDesc + totalIVA + totalOtros + totalNG;
            
            /* Mostrar resultados */
            labelDesc.setText(""+totalDesc);
            labelIVA.setText(""+totalIVA);
            labelNeto.setText(""+totalNeto);
            labelTotal.setText(""+total);
            labelOtros.setText(""+totalOtros);
            labelNG.setText(""+totalNG);
        }

        var afterEdit = function(e) {
            var grid = GridPanelItems;
            var storeC = StoreItems;
            
            /* Habilita o deshabilita el botón de confirmar asiento */
            if (e.field == "Cantidad" || e.field == "PrecioUnitario") {
                actualizarImportes();
                actualizarTotales();
            }
            grid.store.commitChanges();
        };
        
        var updatePuesto = function() {
            var idpuesto = ComboBoxPuntoVenta.getValue();
            var puesto = StorePuntoVenta.getById(""+idpuesto);
            var numpuesto = ""+puesto.get('numero');
            
            while(numpuesto.length<4)
            {
                numpuesto = "0"+numpuesto;
            }
            
            NumberFieldSucursal.setValue(numpuesto);
        };
    </script>
</head>
<body>
    <ext:ResourceManager ID="ResourceManager1" runat="server" />
    
    <ext:Store ID="StoreComboCliente" runat="server">
        <Reader>
            <ext:ArrayReader>
                <Fields>
                    <ext:RecordField Name="id" Type="Auto"/>
                    <ext:RecordField Name="nombre" Type="String"/>
                </Fields>
            </ext:ArrayReader>
        </Reader>          
    </ext:Store>
    
    <ext:Store ID="StoreComboLetra" runat="server">
        <Reader>
            <ext:ArrayReader IDProperty="id">
                <Fields>
                    <ext:RecordField Name="id" Type="String"></ext:RecordField>
                </Fields>
            </ext:ArrayReader>
        </Reader>
    </ext:Store>
    
    <ext:Store ID="StoreFechaCambio" runat="server">
        <Reader>
            <ext:ArrayReader IDProperty="id">
                <Fields>
                    <ext:RecordField Name="id" Type="Int" />
                    <ext:RecordField Name="nombre" Type="String" />
                </Fields>
            </ext:ArrayReader>
        </Reader>
    </ext:Store>
    
    <ext:Store ID="StoreComboMoneda" runat="server">
        <Reader>
            <ext:ArrayReader IDProperty="id">
                <Fields>
                    <ext:RecordField Name="id" Type="Int"/>
                    <ext:RecordField Name="nombre" Type="String"/>
                </Fields>
            </ext:ArrayReader>
        </Reader>
    </ext:Store>
    
    <ext:Store ID="StoreComboTipoOperacion" runat="server">
        <Reader>
            <ext:ArrayReader IDProperty="id">
                <Fields>
                    <ext:RecordField Name="id" Type="Int"/>
                    <ext:RecordField Name="nombre" Type="String"/>
                </Fields>
            </ext:ArrayReader>
        </Reader>
    </ext:Store>
    
    <ext:Store ID="StoreCondicionVenta" runat="server">
        <Reader>
            <ext:ArrayReader IDProperty="id">
                <Fields>
                    <ext:RecordField Name="id" Type="Int"/>
                    <ext:RecordField Name="nombre" Type="String"/>
                </Fields>
            </ext:ArrayReader>
        </Reader>
    </ext:Store>
    
    <ext:Store ID="StoreComboProvincia" runat="server">
        <Reader>
            <ext:ArrayReader IDProperty="id">
                <Fields>
                    <ext:RecordField Name="id" Type="Int"/>
                    <ext:RecordField Name="nombre" Type="String"/>
                </Fields>
            </ext:ArrayReader>
        </Reader>
    </ext:Store>
    
    <ext:Store ID="StorePuntoVenta" runat="server">
        <Reader>
            <ext:ArrayReader IDProperty="id">
                <Fields>
                    <ext:RecordField Name="id" Type="Int"/>
                    <ext:RecordField Name="numero" Type="Int"/>
                    <ext:RecordField Name="nombre" Type="String"/>
                    <ext:RecordField Name="display" Type="String"/>
                </Fields>
            </ext:ArrayReader>
        </Reader>
    </ext:Store>
    
    <ext:Store 
        ID="StoreItems" 
        runat="server"
        ShowWarningOnFailure="false"
        UseIdConfirmation="false" 
        OnRefreshData="StoreItems_RefershData"
        >
        <Reader>
            <ext:JsonReader>
            </ext:JsonReader>
        </Reader>
    </ext:Store>
    
    <ext:Viewport ID="Viewport1" runat="server" AutoScroll="true">
        <Items>
            <ext:RowLayout ID="RowLayout1" runat="server" Split="false">
                <Rows>
                     <%-- Panel superior --%>
                    <ext:LayoutRow RowHeight="0.18">
                        <ext:Panel ID="Panel1" runat="server" Title="" >
                        <Items>
                            <%-- Panel --%>
                            <ext:FormPanel 
                                ID="FormPanel1" 
                                runat="server" 
                                Title=""
                                MonitorPoll="500" 
                                MonitorValid="true" 
                                Padding="5" 
                                AutoWidth="true"
                                ButtonAlign="Right"
                                Border="false"
                                Height="400"
                                AnchorHorizontal="right"
                                Layout="Column">
                                <Items>
                                    <%-- Columna izquierda --%>
                                    <ext:Panel ID="Panel12" 
                                        runat="server" 
                                        Border="false" 
                                        Layout="Form" 
                                        ColumnWidth=".4" 
                                        LabelAlign="Left">
                                        <Defaults>
                                            <ext:Parameter Name="AllowBlank" Value="true" Mode="Raw" />
                                            <ext:Parameter Name="MsgTarget" Value="side" />
                                        </Defaults>
                                        <Items>
                                            <%-- Fecha --%>
                                            <ext:DateField  
                                                ID="DateFieldFecha"
                                                runat="server" 
                                                FieldLabel="Fecha" 
                                                Format="dd/MM/yyyy"
                                                AnchorHorizontal="90%" >
                                            </ext:DateField>
                                            
                                            <%-- Cliente --%>
                                            <ext:ComboBox 
                                                ID="ComboBoxCliente" 
                                                runat="server" 
                                                Editable="false"
                                                EmptyText="Seleccione un cliente..."
                                                FieldLabel="Cliente"
                                                DisplayField="nombre"
                                                ValueField="id"
                                                AnchorHorizontal="90%"
                                                StoreID="StoreComboCliente">
                                                <DirectEvents>
                                                    <Select OnEvent="ComboBoxCliente_OnSelect"></Select>
                                                </DirectEvents>
                                            </ext:ComboBox>                                            
                                            
                                            <%-- Moneda --%>
                                            <ext:CompositeField 
                                                AnchorHorizontal="90%"
                                                FieldLabel="Moneda"
                                                runat="server">
                                            <Items>
                                                <ext:ComboBox 
                                                    ID="ComboBoxMoneda" 
                                                    runat="server" 
                                                    Editable="false"
                                                    EmptyText="Seleccione una moneda..."
                                                    DisplayField="nombre"
                                                    ValueField="id"
                                                    Flex="1"
                                                    StoreID="StoreComboMoneda">
                                                    <DirectEvents>
                                                        <Select OnEvent="ComboBoxMoneda_OnSelect" Before="#{ComboBoxFechaCambio}.clear();" After="#{ComboBoxFechaCambio}.select(0, True);"></Select>
                                                    </DirectEvents>
                                                </ext:ComboBox>
                                                <ext:ComboBox 
                                                    ID="ComboBoxFechaCambio" 
                                                    runat="server" 
                                                    Editable="false"
                                                    EmptyText="Seleccione el cambio..."
                                                    DisplayField="nombre"
                                                    ValueField="id"
                                                    Flex="1"
                                                    StoreID="StoreFechaCambio">
                                                </ext:ComboBox>
                                            </Items>
                                            </ext:CompositeField>
                                            
                                            <%-- Concepto --%>
                                            <ext:TextField ID="TextFieldConcepto" runat="server" 
                                                FieldLabel="Concepto" 
                                                AnchorHorizontal="90%" />
                                        </Items>
                                    </ext:Panel>
                                
                                    <%-- Columna derecha --%>
                                    <ext:Panel ID="Panel11" 
                                        runat="server" 
                                        Border="false" 
                                        Header="false" 
                                        ColumnWidth=".4" 
                                        Layout="Form" 
                                        Width="400"
                                        Height="400"
                                        LabelAlign="Left">
                                        <Defaults>
                                            <ext:Parameter Name="MsgTarget" Value="side" />
                                        </Defaults>
                                        <Items>
                                            <%-- Comprobante (letra, etc) --%>
                                            <ext:Panel 
                                                runat="server"
                                                AnchorHorizontal="90%"
                                                FieldLabel="Comprobante"
                                                Height="24"
                                                Border="false"
                                            >
                                            <Items>
                                                <ext:CompositeField runat="server" AnchorHorizontal="100%">
                                                <Items>
                                                        <%-- Tipo --%>
                                                        <ext:ComboBox 
                                                            ID="ComboBoxTipo" 
                                                            runat="server" 
                                                            Hidden="true"
                                                            Editable="false"
                                                            EmptyText="Tipo"
                                                            Flex="1"
                                                            AllowBlank="true">
                                                            <Items>
                                                                <ext:ListItem Text="Factura" Value="FC" />
                                                                <ext:ListItem Text="Ticket" Value="TK" />
                                                                <ext:ListItem Text="Nota débito" Value="ND" />
                                                                <ext:ListItem Text="Nota crédito" Value="NC" />
                                                            </Items>
                                                        </ext:ComboBox>
                                                        
                                                        <%-- Letra --%>
                                                        <ext:ComboBox 
                                                            ID="ComboBoxLetra" 
                                                            runat="server" 
                                                            Editable="false"
                                                            StoreID="StoreComboLetra"
                                                            Flex="1"
                                                            EmptyText="Letra"
                                                            DisplayField="id"
                                                            ValueField="id"
                                                            Hidden="true"
                                                            AllowBlank="true">
                                                            <Listeners>
                                                                <Select Fn="alSeleccionarLetra" />
                                                            </Listeners>
                                                        </ext:ComboBox>
                                                        
                                                        <%-- Mensaje de selección de cliente --%>
                                                        <ext:Label ID="LabelSeleccioneCliente" Text="Seleccione un cliente..." 
                                                            Flex="1"
                                                            runat="server">
                                                        </ext:Label>
                                                </Items>
                                                </ext:CompositeField>
                                                
                                            </Items>
                                            </ext:Panel> 
                                            
                                            <%-- Punto de venta --%>
                                            <ext:ComboBox 
                                                ID="ComboBoxPuntoVenta" 
                                                runat="server" 
                                                Editable="false"
                                                StoreID="StorePuntoVenta"
                                                DisplayField="display"
                                                ValueField="id"
                                                EmptyText="Punto venta"
                                                FieldLabel="Punto de venta"
                                                AnchorHorizontal="%90"
                                                AllowBlank="true">
                                                <Listeners>
                                                    <Select Handler="updatePuesto();" />
                                                </Listeners>
                                            </ext:ComboBox>
                                            
                                            <%-- Código --%>
                                            <ext:Panel ID="Panel14" 
                                                runat="server"
                                                AnchorHorizontal="90%"
                                                FieldLabel="Código"
                                                Height="24"
                                                Border="false"
                                            >
                                            <Items>
                                                <ext:ColumnLayout ID="ColumnLayout2" 
                                                    runat="server">
                                                    <Columns>
                                                        <%-- Sucursal --%>
                                                        <ext:LayoutColumn ColumnWidth="0.2">
                                                            <ext:TextField 
                                                                ID="NumberFieldSucursal" 
                                                                EmptyText="Punto de venta (auto.)"
                                                                runat="server" 
                                                                ReadOnly="true"
                                                                MaxLength="4">
                                                            </ext:TextField>
                                                        </ext:LayoutColumn>
                                                        
                                                        <%-- Número --%>
                                                        <ext:LayoutColumn ColumnWidth="0.4">
                                                            <ext:NumberField
                                                                ID="NumberFieldNumero"
                                                                EmptyText="Número de factura (auto.)"
                                                                ReadOnly="true"
                                                                MaxLength="8"
                                                                runat="server">
                                                            </ext:NumberField>
                                                        </ext:LayoutColumn>
                                                    </Columns>
                                                </ext:ColumnLayout>
                                                </Items>
                                            </ext:Panel>
                                        </Items>
                                    </ext:Panel>
                                    
                                    <%-- Botones --%>
                                    <ext:Panel ID="Panel22" 
                                        runat="server" 
                                        Border="false" 
                                        Header="false" 
                                        Layout="Row" 
                                        Width="80"
                                        LabelAlign="Left">
                                        <Items>
                                            <%-- Aceptar --%>
                                            <ext:Button ID="ButtonAceptar" runat="server" Text="Aceptar">
                                                <Listeners>
                                                    <%--<Click Handler="ButtonAceptar.hide();registrarFactura();" />--%>
                                                    <Click Handler="registrarFactura();" />
                                                </Listeners>
                                            </ext:Button>
                                            
                                            <%-- Continuar --%>
                                            <ext:Button ID="ButtonContinuar" runat="server" Text="Continuar" Hidden="true">
                                                <Listeners>
                                                    <Click Handler="location.href='IngresarComprobante.aspx';" />
                                                </Listeners>
                                            </ext:Button>
                                            
                                            <%-- Separador --%>
                                            <ext:Panel Height="4" runat="server" Border="false"></ext:Panel>
                                            
                                            <%-- Cancelar --%>
                                            <ext:Button ID="ButtonCancelar" runat="server" Text="Cancelar">
                                                <DirectEvents>
                                                    <Click OnEvent="BotonCancelar_Click">
                                                        <EventMask Msg="Cancelando..." ShowMask="true" MinDelay="500" />
                                                    </Click>
                                                </DirectEvents>
                                            </ext:Button>
                                            
                                            <%-- Separador --%>
                                            <ext:Panel ID="Panel23" Height="4" runat="server" Border="false"></ext:Panel>
                                            
                                            <%-- Cerrar --%>
                                            <ext:Button ID="ButtonCerrar" runat="server" Text="Cerrar">
                                                <DirectEvents>
                                                    <Click OnEvent="BotonCerrar_Click">
                                                        <EventMask Msg="Cerrando..." ShowMask="true" />
                                                    </Click>
                                                </DirectEvents>
                                            </ext:Button>
                                        </Items>
                                    </ext:Panel>
                                </Items>
                            </ext:FormPanel>
                        </Items>
                        </ext:Panel>
                    </ext:LayoutRow>
                    
                    <%-- Panel central --%>
                    <ext:LayoutRow RowHeight="0.75">
                        <ext:Panel ID="Panel2" runat="server" Title="" Layout="Fit" AutoScroll="true">
                        <Items>
                            <ext:TabPanel ID="TabPanel1" runat="server">   
                                <Items>
                                    <%-- Datos generales --%>
                                    <ext:Panel ID="Tab1" runat="server" 
                                        Title="Datos generales" 
                                        AutoScroll="true"
                                        Layout="Form"
                                        Padding="5">
                                        <Items>
                                            <%-- Condición de venta --%>
                                            <ext:ComboBox 
                                                ID="ComboBoxCondicionVenta" 
                                                runat="server" 
                                                Editable="false"
                                                EmptyText="Seleccione una condición..."
                                                FieldLabel="Condición de venta"
                                                DisplayField="nombre"
                                                ValueField="id"
                                                AnchorHorizontal="90%"
                                                StoreID="StoreCondicionVenta">
                                            </ext:ComboBox>
											
                                            <%-- Lote --%>
                                            <ext:NumberField
                                                ID="NumberFieldLote"
                                                runat="server"
                                                FieldLabel="Lote"
                                                AnchorHorizontal="%90"
                                                >
                                            </ext:NumberField>
                                            
                                            <%-- Mensaje --%>
                                            <ext:TextField
                                                ID="TextFieldMensaje"
                                                AnchorHorizontal="%90"
                                                runat="server"
                                                FieldLabel="Mensaje"
                                                >
                                            </ext:TextField>
                                            
                                            <%-- Número de remito --%>
                                            <ext:NumberField 
                                                runat="server" 
                                                FieldLabel="N° Remito">
                                            </ext:NumberField>
                                            
                                            <%-- Contrato --%>
                                        </Items>
                                    </ext:Panel>
                                    
                                    <%-- Datos generales impositivos --%>
                                    <ext:Panel ID="Tab2" runat="server" 
                                        Title="Datos generales impositivos" 
                                        AutoScroll="true"
                                        Padding="5" 
                                        Layout="Form">
                                        <Items>                                           
                                            <%-- Provincia --%>
                                            <ext:ComboBox 
                                                ID="ComboBoxProvincias" 
                                                runat="server" 
                                                Editable="false"
                                                EmptyText="Seleccione una provincia..."
                                                FieldLabel="Provincia"
                                                DisplayField="nombre"
                                                ValueField="id"
                                                AnchorHorizontal="90%"
                                                StoreID="StoreComboProvincia">
                                            </ext:ComboBox>
                                                
                                            <%-- Bien de uso --%>
                                            <ext:Checkbox
                                                runat="server"
                                                FieldLabel="Bien de uso"
                                                ID="CheckBoxBienDeUso"
                                                >
                                            </ext:Checkbox>
                                            
                                            <%-- Tipo de operación --%>
                                            <ext:ComboBox 
                                                ID="ComboBoxTipoOperacion" 
                                                runat="server" 
                                                Editable="false"
                                                EmptyText="Seleccione un tipo..."
                                                FieldLabel="Tipo de operación"
                                                DisplayField="nombre"
                                                ValueField="id"
                                                AnchorHorizontal="90%"
                                                StoreID="StoreComboTipoOperacion">
                                            </ext:ComboBox>
                                        </Items>
                                    </ext:Panel>
                                    
                                    <%-- Items --%>
                                    <ext:Panel ID="PanelDetalleItems" 
                                        runat="server" 
                                        Title="Detalle de items" 
                                        Layout="form"
                                        Height="1000"
                                        AutoScroll="true"
                                        Padding="5">
                                        <Items>
                                            <ext:RowLayout runat="server" Split="true">
                                                <Rows>
                                                    <%-- Parámetros --%>
                                                    <ext:LayoutRow RowHeight="0.4">
                                                        <ext:Panel runat="server" Padding="5" Layout="Form">
                                                        <Items>
                                                            <%-- IVA --%>
                                                            <ext:NumberField 
                                                                ID="NumberFieldIVA"
                                                                DecimalPrecision="2"
                                                                AllowNegative="false"
                                                                FieldLabel="I.V.A. (%)"
                                                                runat="server">
                                                                <Listeners>
                                                                    <Change Handler="actualizarTotales();" />
                                                                </Listeners>
                                                            </ext:NumberField>
                                                            
                                                            <%-- Descuento --%>
                                                            <ext:NumberField 
                                                                ID="NumberFieldDescuento"
                                                                DecimalPrecision="2"
                                                                AllowNegative="false"
                                                                FieldLabel="Descuento (%)"
                                                                runat="server">
                                                                <Listeners>
                                                                    <Change Handler="actualizarTotales();" />
                                                                </Listeners>
                                                            </ext:NumberField>
                                                            
                                                            <%-- Regímenes especiales --%>
                                                            <ext:CompositeField ID="CompositeFieldRegimen" runat="server" FieldLabel="Regímenes esp.">
                                                                <Items>
                                                                    <ext:ComboBox ID="ComboBoxRegimen" runat="server" Width="300" />
                                                                    <ext:NumberField ID="NumberFieldMontoRegimen" runat="server" Width="150" EmptyText="Monto" DecimalPrecision="2" />
                                                                </Items>
                                                            </ext:CompositeField>
                                                            
                                                        </Items>
                                                        </ext:Panel>
                                                    </ext:LayoutRow>
                                                    
                                                    <%-- Items --%>
                                                    <ext:LayoutRow RowHeight="0.6">
                                                        <%-- Panel de items --%>
                                                        <ext:Panel 
                                                        Collapsible="false"
                                                        ID="PanelItems" 
                                                        Title="Items"
                                                        runat="server" 
                                                        Border="true"
                                                        Disabled="true"
                                                        >
                                                            <Items>
                                                                <ext:GridPanel 
                                                                ID="GridPanelItems" 
                                                                runat="server" 
                                                                AutoHeight="true"
                                                                AutoWidth="true"
                                                                StoreID="StoreItems"
                                                                Border="false"
                                                                >
                                                                    <Listeners>
                                                                        <AfterEdit Fn="afterEdit" />
                                                                    </Listeners>
                                                                    <ColumnModel runat="server">
                                                                    </ColumnModel>
                                                                    <SelectionModel>
                                                                        <ext:RowSelectionModel ID="RowSelectionModel1" runat="server" SingleSelect="true" >
                                                                            <DirectEvents>
                                                                                <RowSelect OnEvent="OnRowSelect_Event">
                                                                                    <ExtraParams>
                                                                                        <ext:Parameter Name="Values" Value="Ext.encode(#{GridPanelItems}.getRowsValues({selectedOnly:true}))" Mode="Raw" />
                                                                                    </ExtraParams>
                                                                                </RowSelect>
                                                                            </DirectEvents>
                                                                        </ext:RowSelectionModel>
                                                                    </SelectionModel>
                                                                    <%-- Botones --%>
                                                                    <Buttons>
                                                                        <ext:Button ID="ButtonAddSvc" runat="server" Text="Agregar servicio" Icon="Add">
                                                                            <DirectEvents>
                                                                                <Click OnEvent="BotonAgregarServicio_Click" Before="#{FormPanelMov}.getForm().reset();">
                                                                                    <EventMask ShowMask="true" Msg="Cargando..." />
                                                                                </Click>
                                                                            </DirectEvents>
                                                                        </ext:Button>
                                                                        <ext:Button runat="server" Text="Agregar producto" Icon="Add">
                                                                            <DirectEvents>
                                                                                <Click OnEvent="BotonAgregar_Click" Before="#{FormPanelMov}.getForm().reset();">
                                                                                    <EventMask ShowMask="true" Msg="Cargando..." />
                                                                                </Click>
                                                                            </DirectEvents>
                                                                        </ext:Button>
                                                                        <ext:Button ID="BotonModificar" runat="server" Text="Modificar" Icon="TableEdit">
                                                                            <DirectEvents>
                                                                                <Click OnEvent="BotonModificar_Click">
                                                                                    <EventMask ShowMask="true" Msg="Cargando..." />
                                                                                </Click>
                                                                            </DirectEvents>
                                                                        </ext:Button>
                                                                        <ext:Button runat="server" Text="Quitar" Icon="Delete">
                                                                            <Listeners>
                                                                                <Click Handler="#{GridPanelItems}.deleteSelected();actualizarTotales();" />
                                                                            </Listeners>
                                                                        </ext:Button>
                                                                    </Buttons>
                                                                    <LoadMask ShowMask="true" />
                                                                </ext:GridPanel>                        
                                                            </Items>
                                                        </ext:Panel>
                                                        <%-- Fin del panel de items --%>
                                                    </ext:LayoutRow>
                                                    <%-- Fin items --%>
                                                </Rows>
                                            </ext:RowLayout>
                                        
                                        </Items>
                                        
                                    </ext:Panel>
                                </Items>                            
                            </ext:TabPanel>
                        </Items>
                        </ext:Panel>
                    </ext:LayoutRow>
                    
                    <%-- Panel inferior --%>
                    <ext:LayoutRow>
                        <ext:Panel ID="Panel3" runat="server" Title="" Height="60">
                        <Items>
                            <ext:ColumnLayout ID="ColumnLayout1" runat="server" Split="false">
                                <Columns>
                                    <ext:LayoutColumn ColumnWidth="0.166">
                                        <ext:Panel ID="Panel4" runat="server" Title="Neto" Height="204">
                                            <Items>
                                                <ext:Label ID="LabelTotalNeto" Text="0" runat="server" />
                                            </Items>
                                        </ext:Panel>
                                    </ext:LayoutColumn>
                                    
                                    <ext:LayoutColumn ColumnWidth="0.166">
                                        <ext:Panel ID="Panel5" runat="server" Title="No gravado/excento">
                                            <Items>
                                                <ext:Label ID="LabelNoGravado" Text="0" runat="server" />
                                            </Items>
                                        </ext:Panel>
                                    </ext:LayoutColumn>
                                    
                                    <ext:LayoutColumn ColumnWidth="0.166">
                                        <ext:Panel ID="Panel7" runat="server" Title="Descuento">
                                            <Items>
                                                <ext:Label ID="LabelDesc" Text="0" runat="server" />
                                            </Items>
                                        </ext:Panel>
                                    </ext:LayoutColumn>
                                    
                                    <ext:LayoutColumn ColumnWidth="0.166">
                                        <ext:Panel ID="Panel6" runat="server" Title="I.V.A.">
                                            <Items>
                                                <ext:Label ID="LabelIVA" Text="0" runat="server" />
                                            </Items>
                                        </ext:Panel>
                                    </ext:LayoutColumn>
                                    
                                    <ext:LayoutColumn ColumnWidth="0.166">
                                        <ext:Panel ID="Panel9" runat="server" Title="Otros">
                                            <Items>
                                                <ext:Label ID="LabelOtros" Text="0" runat="server" />
                                            </Items>
                                        </ext:Panel>
                                    </ext:LayoutColumn>
                                    
                                    <ext:LayoutColumn ColumnWidth="0.17">
                                        <ext:Panel ID="PanelTotal" runat="server" Title="Total">
                                            <Items>
                                                <ext:Label ID="LabelTotal" Text="0" runat="server" />
                                            </Items>
                                        </ext:Panel>
                                    </ext:LayoutColumn>
                                </Columns>
                            </ext:ColumnLayout>
                        </Items>
                        </ext:Panel>
                    </ext:LayoutRow>
                </Rows>
            </ext:RowLayout>
        </Items>
    </ext:Viewport>
    
    
    <%-- Ventana de ingreso de items --%>
    <ext:Window 
        ID="VentanaMov" 
        runat="server" 
        Title="Item"  
        Icon="Application"
        AutoHeight="true" 
        Width="380px"
        BodyStyle="background-color: #fff;" 
        Padding="5"
        Closable="false"
        Collapsible="false" 
        Hidden="true"
        Modal="true">
        <Items>
            <ext:FormPanel ID="FormPanelMov" 
                runat="server" 
                Border="false" 
                Header="false" 
                LabelAlign="Left">
                <Defaults>
                    <ext:Parameter Name="Editable" Value="true" />
                    <ext:Parameter Name="MsgTarget" Value="side" />
                </Defaults>
                <Items>
                    <%-- Servicios --%>
                    <ext:Panel ID="PanelComboServicios" runat="server" Border="false" AnchorHorizontal="90%" Layout="Fit">
                    <Content>
                        <americo:ComboClases 
                            ID="ComboClasesServicios" runat="server" 
                            TextoVacio="Seleccione un servicio" 
                            Texto="Servicio" 
                            AtributoValor="Idservicio" 
                            AtributoDisplay="Nombre" 
                            />
                    </Content>
                    </ext:Panel>
                    
                    <%-- Productos --%>
                    <ext:Panel ID="PanelComboProductos" runat="server" Border="false" AnchorHorizontal="90%" Layout="Fit">
                    <Content>
                        <americo:ComboClases 
                            ID="ComboClasesProductos" runat="server" 
                            TextoVacio="Seleccione un producto" 
                            Texto="Producto" 
                            AtributoValor="Idproducto" 
                            AtributoDisplay="Nombre" 
                            />
                    </Content>
                    </ext:Panel>
                
                    <ext:NumberField
                        runat="server"
                        AllowBlank="false"
                        AllowNegative="false"
                        ID="NumberFieldCantidad"
                        FieldLabel="Cantidad"
                        AnchorHorizontal="90%"
                    >
                    </ext:NumberField>
                </Items>
            </ext:FormPanel>
        </Items>
        <Buttons>
            <ext:Button ID="BotonAceptar"
                Text="Aceptar"
                runat="server">
                <DirectEvents>
                    <Click OnEvent="Window1_BotonAceptar_Click" After="actualizarImportes();actualizarTotales();">
                        <ExtraParams>
                            <ext:Parameter Name="values" Value="#{FormPanelMov}.getForm().getValues()" Mode="Raw" Encode="true" />
                        </ExtraParams>
                    </Click>
                </DirectEvents>
            </ext:Button>
            <ext:Button ID="BotonCancelar" 
                Text="Cancelar"
                runat="server">
                <DirectEvents>
                    <Click OnEvent="Window1_BotonCancelar_Click" Before="#{FormPanelMov}.getForm().reset();"></Click>
                </DirectEvents>
            </ext:Button>
        </Buttons>
    </ext:Window>
    <%-- Fin de ventana --%>
</body>
</html>
